﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using EnterpriseLibraryWrapper;
using itau.im.entidade;

namespace itau.im.negocio
{
    [ServiceContract]
    public interface IPricingBS
    {
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Serie> ObterSeriesPorCodigoFamilia(int codigoFamilia);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Serie> ObterSeriesPorNomeSerie(string nomeSerie);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Familia> ObterFamiliaPorCodigoFamilia(int codigoFamilia);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Familia> ObterFamiliaPorNomeFamilia(string nomeFamilia);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Atributo> ObterAtributosPorCodigoFamiliaCodigoTipoAtributo(int codigoFamilia, Int16 codigoTipoAtributo, Int16 codigoTipoDadoAtributo);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Serie> ObterSeriesPorCodigoSerie(int codigoSerie);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        List<Familia> ObterFamilias();

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        string ObterValorSerieAtributo(int codigoSerieIntegrante, int codigoAtributoIntegrante, DateTime dataHoraExecucao);

    }
}
